{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "from langchain_openai import ChatOpenAI\n",
    "\n",
    "_llm = ChatOpenAI(\n",
    "    base_url=\"http://192.168.10.13:60001/v1\",\n",
    "    model=\"qwen2.5:7b\",\n",
    "    api_key=\"ollama\"\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "from researcher import Researcher\n",
    "from painter import Painter\n",
    "\n",
    "_researcher = Researcher(_llm)\n",
    "_painter = Painter(_llm)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "def _researcher_node(state):\n",
    "    return {\"messages\":[_researcher(state)]}"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "def _painter_node(state):\n",
    "    return {\"messages\":[_painter(state)]}"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "from langgraph.graph import END\n",
    "\n",
    "def router(state):\n",
    "    _last_message =state[\"messages\"][-1]\n",
    "    if \"FINAL ANSWER\" in _last_message.content.upper():\n",
    "        return END\n",
    "    return \"continue\""
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "from langgraph.graph import StateGraph,MessagesState,START,END\n",
    "\n",
    "_builder = StateGraph(MessagesState)\n",
    "\n",
    "_builder.add_node(\"_researcher_node\",_researcher_node)\n",
    "_builder.add_node(\"_painter_node\",_painter_node)\n",
    "\n",
    "_builder.add_edge(START,\"_researcher_node\")\n",
    "_builder.add_conditional_edges(\"_researcher_node\",router,{\"continue\":\"_painter_node\",END:END})\n",
    "_builder.add_conditional_edges(\"_painter_node\",router,{\"continue\":\"_researcher_node\",END:END})\n",
    "\n",
    "_graph = _builder.compile()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/jpeg": "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",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from IPython.display import display,Image\n",
    "\n",
    "display(Image(_graph.get_graph().draw_mermaid_png()))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{'_researcher_node': {'messages': [AIMessage(content='为了获取英国过去5年的国内生产总值（GDP）数据以进行绘图展示，我们可以选择几个权威的数据源来收集这些信息，比如世界银行或者是英国国家统计局 (ONS) 的网站。\\n\\n但在这个例子中，我可以使用示例数据来帮助你更好地编写脚本执行这些任务。我假设我们已从某个可靠数据源下载到了如下表所示的年度GDP数据：\\n```\\n| 年份    | 国内生产总值（亿美元）|\\n|:-------:|:------------------:|\\n| 2018    |      26954.7       |\\n| 2019    |      27332.1       |\\n| 2020    |      26788.5       |\\n| 2021    |                  27173.0 （预测值）|\\n| 2022    |                 26793.7（预测值  ） |\\n\\n```\\n现在，为了进行可视化展示，请允许我使用Python代码来进行这些绘图准备工作。是否选择`matplotlib`来绘制这个图表呢？\\n```python\\nimport matplotlib.pyplot as plt\\n\\n# 示例数据\\nyears = [2018, 2019, 2020, 2021, 2022]\\ngdp_values_billions_bgn = [26954.7, 27332.1, 26788.5, 27173.0, 26793.7]\\n\\n# 绘制折线图\\nplt.plot(years, gdp_values_billions_bgn)\\nplt.title(\"英国过去5年的国内生产总值（单位：十亿英镑）\")\\nplt.xlabel(\"时间 (年)\")\\nplt.ylabel(\"国内生产总值（十亿英镑）\")\\nplt.grid(True)\\n\\n# 显示绘图\\nplt.show()\\n```\\n让我们直接执行上述代码以绘制这个图表。然而，由于限制原因和我自身不能像常规计算机程序那样实际展现或渲染图形，您可以直接将这段文本复制到本地的Python集成开发环境，如Jupyter Notebook或者idle中，并运行它来生成图表。\\n如果您需要更精准的数据或者想尝试使用真实世界的数据，请提供数据链接或是告诉我获取的方式。这样有助于我构建正确的操作步骤以获取和展示准确的GDP数据图表。', additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 510, 'prompt_tokens': 85, 'total_tokens': 595}, 'model_name': 'qwen2.5:7b', 'system_fingerprint': 'fp_ollama', 'finish_reason': 'stop', 'logprobs': None}, id='run-af5c7a7f-560e-43b5-9581-264d32cb4272-0', usage_metadata={'input_tokens': 85, 'output_tokens': 510, 'total_tokens': 595})]}}\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Python REPL can execute arbitrary code. Use with caution.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{'_painter_node': {'messages': [AIMessage(content=\"看来在预览环境中的绘图无法直接完成，但下面我将展示一个完整的Python脚本。我们假设使用Python标准库进行折线图绘制。您可以按照这个脚本来操作生成所需的数据图表。让我们继续通过提供具体的Python代码来绘制示例GDP数据的时间序列图:\\n```python\\nimport matplotlib.pyplot as plt\\n\\n# 这是用来表示英国过去几年的模拟GDP数据。\\nyears = [2018, 2019, 2020, 2021, 2022]\\ngdp_values_billions_bgn = [26954.7, 27332.1, 26788.5, 27173.0, 26793.7]\\n\\n# 创建画布\\nplt.figure(figsize=(5, 3))\\n\\n# 绘制条线图和添加轴标签、标题等细节。\\nplt.plot(years, gdp_values_billions_bgn, marker='o')\\nplt.title('英国过去5年的国内生产总值（单位：十亿英镑）')\\nplt.xlabel('时间 (年)')\\nplt.ylabel('经济数据 - 十亿英镑')\\nax = plt.gca()\\nax.set_ylim(bottom=0)  # 设置Y轴的最小值。\\nfor gdp, year in zip(gdp_values_billions_bgn, years):\\n    ax.annotate(f'{gdp} BGN', xy=(year, gdp), textcoords='data')\\n\\n# 显示图像\\nplt.show()\\n```\\n\\n请在安装的Jupyter Notebook中或者Python环境中执行上述脚本以产生图表。如果您需要进一步帮助处理真实数据或其它可视化需求，比如获取这些GDP数值或者不同国家和时间范围中的经济数据请告知！现在我们已完成绘制，并可以查看模拟图的结果，在你的开发环境上运行上面完整的代码即可展示图像。\", additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 398, 'prompt_tokens': 932, 'total_tokens': 1330}, 'model_name': 'qwen2.5:7b', 'system_fingerprint': 'fp_ollama', 'finish_reason': 'stop', 'logprobs': None}, id='run-540fc630-2fac-419d-9e62-f469270641d1-0', usage_metadata={'input_tokens': 932, 'output_tokens': 398, 'total_tokens': 1330})]}}\n",
      "{'_researcher_node': {'messages': [AIMessage(content='', additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 1, 'prompt_tokens': 992, 'total_tokens': 993}, 'model_name': 'qwen2.5:7b', 'system_fingerprint': 'fp_ollama', 'finish_reason': 'stop', 'logprobs': None}, id='run-0c5d89b2-3bc7-41a9-96cd-a6ff1e8a1b5b-0', usage_metadata={'input_tokens': 992, 'output_tokens': 1, 'total_tokens': 993})]}}\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 22269 (\\N{CJK UNIFIED IDEOGRAPH-56FD}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 20869 (\\N{CJK UNIFIED IDEOGRAPH-5185}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 29983 (\\N{CJK UNIFIED IDEOGRAPH-751F}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 20135 (\\N{CJK UNIFIED IDEOGRAPH-4EA7}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 24635 (\\N{CJK UNIFIED IDEOGRAPH-603B}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 20540 (\\N{CJK UNIFIED IDEOGRAPH-503C}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 21313 (\\N{CJK UNIFIED IDEOGRAPH-5341}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 20159 (\\N{CJK UNIFIED IDEOGRAPH-4EBF}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 33521 (\\N{CJK UNIFIED IDEOGRAPH-82F1}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 38225 (\\N{CJK UNIFIED IDEOGRAPH-9551}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 36807 (\\N{CJK UNIFIED IDEOGRAPH-8FC7}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 21435 (\\N{CJK UNIFIED IDEOGRAPH-53BB}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 20960 (\\N{CJK UNIFIED IDEOGRAPH-51E0}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 24180 (\\N{CJK UNIFIED IDEOGRAPH-5E74}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 30340 (\\N{CJK UNIFIED IDEOGRAPH-7684}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 25968 (\\N{CJK UNIFIED IDEOGRAPH-6570}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 25454 (\\N{CJK UNIFIED IDEOGRAPH-636E}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 65288 (\\N{FULLWIDTH LEFT PARENTHESIS}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 21333 (\\N{CJK UNIFIED IDEOGRAPH-5355}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 20301 (\\N{CJK UNIFIED IDEOGRAPH-4F4D}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 65306 (\\N{FULLWIDTH COLON}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 65289 (\\N{FULLWIDTH RIGHT PARENTHESIS}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 26102 (\\N{CJK UNIFIED IDEOGRAPH-65F6}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n",
      "/root/miniconda3/envs/py310/lib/python3.10/site-packages/IPython/core/pylabtools.py:170: UserWarning: Glyph 38388 (\\N{CJK UNIFIED IDEOGRAPH-95F4}) missing from font(s) DejaVu Sans.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n"
     ]
    },
    {
     "data": {
      "image/png": "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/yQfucYMfa18fHwgk8kqfX300UdP8pFrrDbXasOGDWjTpg1sbW3h7e2NxYsXPzafuW5XNVkrU9uuzpw5gxdffBFeXl6wsbGBv78/vvzyywfe68CBA2jbti2USiX8/PywevXqx+Y7e/YsunfvDmtra3h5eeGTTz554s/8JAx5vdLS0h7YrmQyGY4dO6aTz15dtbVW6enpeOmll9CsWTPI5XJMmjRJVL6rV69i0KBBsLW1haurK6ZOnYqysjLxH1AgnQkLCxNWrVolJCQkCHFxccJTTz0lNGrUSMjPz9eOGT9+vODl5SXs27dPOHXqlNC5c2ehS5culeZ5++23hW+++UYYNWqU0Lp16wfe5/Lly4JSqRRmzpwppKSkCLGxsUKPHj2E4ODgR+YbMGCA0Lp1a+HYsWPC4cOHBT8/P+HFF1/UyWevLkNfK29vb2HBggVCenq69uuf2WpTba3Vzp07BQsLC2HZsmXCpUuXhMjISMHDw0P4+uuvH5nPHLermq6VqW1XK1asEN555x3hwIEDwqVLl4SffvpJsLGxqbQOly9fFmxtbYUpU6YI586dE77++mtBoVAIu3btemi2nJwcwc3NTRg5cqSQkJAg/PLLL4KNjY3w/fff62cxRDDk9UpNTRUACHv37q20bZWWlupnMR6jttYqNTVVeOedd4Q1a9YIbdq0Ed59993HZisrKxMCAwOFfv36CadPnxZ27twp1K9fX5g5c6boz8fCSY+ysrIEAMLBgwcFQRCE7OxswdLSUti4caN2TFJSkgBAiImJeeD1c+fOrfKH9saNGwULCwtBrVZrH9u+fbsgk8ke+g/l3LlzAgDh5MmT2sf++OMPQSaTCTdu3KjpR9QZQ1orQSj/Bff555/X/APpkb7W6sUXXxSeffbZSo999dVXgqenp6DRaKrMYq7bVU3WShBMe7uq8NZbbwm9e/fWfj9t2jShZcuWlca88MILQlhY2EPn+Pbbb4W6desKJSUl2semT58uNG/evNqfS18Mab0qCqfTp0/X8NPol77W6p969uwpqnDauXOnIJfLhYyMDO1jy5YtExwdHSttb4/CQ3V6lJOTAwBwdnYGAMTGxkKlUqFfv37aMS1atECjRo0QExMjet527dpBLpdj1apVUKvVyMnJwU8//YR+/frB0tKyytfExMSgTp06aN++vfaxfv36QS6X4/jx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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{'_painter_node': {'messages': [AIMessage(content='_FINAL ANSWER_\\n\\n根据您提供的GDP数据，我已经绘制出了过去几年的英国GDP情况。虽然展示给您的只是生成的示意图的数据操作步骤代码，并未在当前界面中实际查看图版（受限于平台），如果您现在使用本地开发环境运行上述完整的Python脚本会看到如下的图形：\\n\\n图上呈现了从2018年至2021年英国的每一年度国内生产总值（GDP）的数据条，对应数值单位为十亿英镑。从这个图形中可以直接观察到该时间段内的GDP波动情况。\\n\\n如果有更多详细的需求或是需要对实际数据进行绘图，请告诉我们可以更好地协助完成相应请求。如果您想在本平台上查看这种图表的效果演示，那么您可以将上述代码运行于Python环境中，如Jupyter notebook或者安装的开发套件进行预览显示。', additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 178, 'prompt_tokens': 1363, 'total_tokens': 1541}, 'model_name': 'qwen2.5:7b', 'system_fingerprint': 'fp_ollama', 'finish_reason': 'stop', 'logprobs': None}, id='run-2d3ff104-d413-4931-bf50-edeb67a2fd90-0', usage_metadata={'input_tokens': 1363, 'output_tokens': 178, 'total_tokens': 1541})]}}\n"
     ]
    }
   ],
   "source": [
    "for _event_dict in _graph.stream({\"messages\":[(\"human\",\"获取英国过去5年的国内生产总值。一旦你把它编码好，并执行画图，就完成。\")]}):\n",
    "    print(_event_dict)\n",
    "    # for _message in _event_dict[\"messages\"]:\n",
    "    #     print(_message)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "py310",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.14"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
